home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
United Public Domain Gold 2
/
United Public Domain Gold 2.iso
/
utilities
/
pu453.dms
/
pu453.adf
/
extras
/
basic_sources
/
qcd_conflicts.bas
< prev
next >
Wrap
BASIC Source File
|
1992-11-08
|
2KB
|
112 lines
REM $option Y+,K150,Fc:qcconflict
WINDOW 1,"QCD Duplicate-Dir Finder v1.0",(100,0)-(500,240),15,
PRINT
PRINT "(c) 26-10-1992 David Alan Caruana"
PRINT
PRINT
PRINT "Please Wait .. Loading QCDirList"
DIM s$(5000)
DIM s(5000)
OPEN "I",#1,"s:qcdirlist"
WHILE NOT(EOF(1))
INCR n
LOCATE 7,5 : PRINT "Record ";n
INPUT #1,s$(n)
INPUT #1,s(n)
WEND
CLOSE #1
CLS : PRINT "Please Wait .. Searching"
FOR x = 1 TO (n-1)
LOCATE 3,1 : PRINT "Searched ";INT(x/n*100);" %"
FOR y = (x+1) TO n
IF s$(y)=s$(x) THEN
conflict x,y
CLS : PRINT "Please Wait .. Searching"
LOCATE 3,1 : PRINT "Searched ";INT(x/n*100);" %"
END IF
NEXT y
NEXT x
CLS
PRINT "All Ready .."
PRINT "OK to save ? [y]es or [n]o"
x$ = ""
WHILE x$ = "" : x$ = INKEY$ : WEND
IF UCASE$(x$) = "Y" THEN
OPEN "O",#1,"s:qcdirlist"
FOR x = 1 TO n
PRINT #1,s$(x)
PRINT #1,s(x)
NEXT x
CLOSE #1
END IF
SYSTEM
SUB conflict(x,y) STATIC
SHARED s$(),s(),n
sd = s(x)
p=x
fs$ = s$(x)
nxtsd:
DECR sd
IF sd = -1 THEN GOTO extsd
WHILE s(p)<>sd
DECR p
WEND
IF sd>0 THEN
fs$ = s$(p)+"/"+fs$
ELSE
fs$ = s$(p)+fs$
END IF
GOTO nxtsd
extsd:
dd = s(y)
p=y
fd$ = s$(y)
nxtdd:
DECR dd
IF dd = -1 THEN GOTO extdd
WHILE s(p)<>dd
DECR p
WEND
IF dd>0 THEN
fd$ = s$(p)+"/"+fd$
ELSE
fd$ = s$(p)+fd$
END IF
GOTO nxtdd
extdd:
retry:
CLS
LOCATE 1,1:PRINT "Name Conflict Detected ..."
LOCATE 3,1:PRINT "Which is most important ?"
LOCATE 6,1:PRINT "[1] : ";fs$;" "
LOCATE 7,1:PRINT " .. or .."
LOCATE 8,1:PRINT "[2] : ";fd$;" "
LOCATE 10,1:PRINT "Press [1] or [2]"
x$ = ""
WHILE x$ = "":x$ = INKEY$:WEND
okf = 0
IF x$ = "1" THEN
s$(y) = "_"+s$(y)
okf=-1
END IF
IF x$ = "2" THEN
s$(x) = "_"+s$(x)
okf=-1
END IF
IF NOT(okf) THEN GOTO retry
END SUB